	org 16400
__START_PROGRAM:
	di
	push ix
	push iy
	exx
	push hl
	exx
	ld hl, 0
	add hl, sp
	ld (__CALL_BACK__), hl
	ei
	jp __LABEL__charset01end
__LABEL__charset01:
#line 2
		defb 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
		defb 07fh,0dfh,0f7h,0fdh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,07fh,0dfh,0f7h,0fdh
		defb 03fh,0cfh,0f3h,0fch,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,03fh,0cfh,0f3h,0fch
		defb 01fh,0c7h,0f1h,0fch,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,07fh,01fh,0c7h,0f1h,0fch
		defb 01fh,087h,0e1h,0f8h,0feh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,07fh,01fh,087h,0e1h,0f8h
		defb 00fh,083h,0e0h,0f8h,0feh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,03fh,00fh,083h,0e0h,0f8h
		defb 00fh,003h,0c0h,0f0h,0fch,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,03fh,00fh,003h,0c0h,0f0h
		defb 007h,001h,0c0h,0f0h,0fch,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,07fh,01fh,007h,001h,0c0h,0f0h
		defb 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,0fdh,0f7h,0dfh,07fh
		defb 0fdh,0f7h,0dfh,07fh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,0fch,0f3h,0cfh,03fh
		defb 0fch,0f3h,0cfh,03fh,0ffh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0ffh,0fch,0f1h,0c7h,01fh
		defb 0fch,0f1h,0c7h,01fh,07fh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0feh,0f8h,0e1h,087h,01fh
		defb 0f8h,0e1h,087h,01fh,07fh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0feh,0f8h,0e0h,083h,00fh
		defb 0f8h,0e0h,083h,00fh,03fh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0fch,0f0h,0c0h,003h,00fh
		defb 0f0h,0c0h,003h,00fh,03fh,0ffh,0ffh,0ffh
		defb 0ffh,0ffh,0ffh,0fch,0f0h,0c0h,001h,007h
		defb 0f0h,0c0h,001h,007h,01fh,07fh,0ffh,0ffh
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,03ch,03ch,03ch,014h,03ch,000h,018h
		defb 000h,01ch,01dh,03eh,000h,000h,000h,000h
		defb 000h,03fh,07fh,01eh,07eh,038h,07ch,07ch
		defb 000h,03eh,0f0h,038h,017h,03fh,007h,03eh
		defb 000h,030h,0f4h,01ch,087h,01fh,009h,00fh
		defb 000h,038h,0f8h,035h,086h,0feh,0efh,07fh
		defb 000h,03ch,03ch,018h,000h,000h,000h,000h
		defb 000h,03eh,03ch,07ch,03ch,03ch,01eh,01ch
		defb 000h,03ch,03eh,01eh,01eh,03eh,07ch,018h
		defb 000h,000h,01eh,07fh,07eh,000h,000h,000h
		defb 000h,000h,03ch,03ch,03ch,03ch,018h,000h
		defb 000h,000h,000h,000h,000h,03ch,07ch,018h
		defb 000h,000h,000h,000h,07eh,03ch,000h,000h
		defb 000h,000h,000h,000h,000h,03eh,018h,01ch
		defb 000h,00fh,01eh,03eh,07ch,0f8h,0f0h,060h
		defb 000h,03ch,0c2h,0c2h,0c2h,0e7h,0f7h,03eh
		defb 000h,038h,03eh,03eh,03eh,0ddh,01ch,07fh
		defb 000h,03ch,00fh,01fh,07ch,0ddh,030h,07fh
		defb 000h,03eh,00fh,00fh,01fh,03fh,007h,07eh
		defb 000h,01fh,00eh,03eh,0bfh,08fh,07fh,006h
		defb 000h,03ch,0f8h,017h,007h,0c7h,007h,07ch
		defb 000h,03ch,0f0h,0f1h,071h,0e7h,067h,03eh
		defb 000h,03eh,01fh,01eh,03ch,07ch,038h,030h
		defb 000h,03ch,03fh,01ch,033h,0f7h,067h,03eh
		defb 000h,03ch,03fh,02ah,00fh,03ch,007h,07ch
		defb 000h,000h,03eh,03ch,01ch,03eh,01ch,01ch
		defb 000h,000h,03eh,03ch,01ch,03eh,03ch,018h
		defb 030h,000h,00fh,070h,03eh,0f0h,00fh,000h
		defb 000h,000h,000h,07eh,07eh,000h,07eh,000h
		defb 000h,000h,0f0h,00eh,01ch,00fh,0f0h,000h
		defb 000h,03ch,00fh,03eh,03ch,03ch,000h,018h
		defb 000h,01ch,0c0h,0ffh,0f0h,0f9h,03ch,0f0h
		defb 000h,03eh,01ch,028h,03eh,041h,0e7h,0e3h
		defb 000h,03eh,033h,0e7h,031h,0e7h,063h,0feh
		defb 000h,01eh,0f8h,0f0h,0f8h,01eh,070h,01fh
		defb 000h,03ch,07bh,031h,073h,03ch,067h,07ch
		defb 000h,03eh,0f8h,0f1h,0f8h,0f1h,070h,07fh
		defb 000h,03eh,0f8h,0f0h,0f8h,0f8h,070h,070h
		defb 000h,03eh,0f0h,0f8h,0f1h,03fh,063h,03eh
		defb 000h,033h,033h,0e7h,042h,0c2h,0e7h,067h
		defb 000h,03ch,03ch,03ch,03ch,03ch,018h,07eh
		defb 000h,01ch,00fh,00fh,00fh,07ch,00eh,07ch
		defb 000h,033h,0e7h,038h,037h,003h,067h,063h
		defb 000h,0f0h,0f0h,0f0h,0f0h,0e0h,060h,000h
		defb 000h,043h,0e7h,07fh,069h,061h,0dbh,0c3h
		defb 000h,0e0h,0f7h,0f3h,0d7h,0d6h,0efh,0e7h
		defb 000h,03ch,042h,063h,0c3h,0e7h,0e7h,03ch
		defb 01fh,0feh,0e1h,0f7h,0f8h,0f8h,0f0h,0f0h
		defb 000h,03ch,0c2h,0c1h,033h,03eh,01fh,03eh
		defb 000h,03ch,033h,0e7h,077h,0b1h,067h,063h
		defb 000h,03fh,0f0h,03ch,00fh,00fh,003h,0feh
		defb 000h,07fh,03eh,03eh,03eh,03eh,01ch,01ch
		defb 000h,0c1h,031h,031h,031h,0e3h,063h,03eh
		defb 000h,0c1h,003h,03dh,01eh,07eh,03ch,01ch
		defb 000h,081h,0c1h,0c3h,03eh,03fh,07fh,077h
		defb 000h,0c3h,01ch,03eh,01ch,0c2h,077h,0e3h
		defb 000h,0c3h,03ch,01eh,03ch,03ch,018h,018h
		defb 000h,0feh,01fh,03eh,07ch,0d9h,070h,07fh
		defb 000h,03ch,03ch,03ch,03ch,03ch,03fh,018h
		defb 000h,0f0h,0f8h,07ch,03eh,01fh,00fh,00eh
		defb 000h,03eh,03eh,03eh,03eh,03eh,01ch,01ch
		defb 000h,018h,03bh,07eh,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,07fh
		defb 078h,03ch,038h,000h,000h,000h,000h,000h
		defb 000h,000h,03ch,00fh,03fh,03fh,067h,07fh
		defb 000h,0f0h,03ch,079h,039h,0f3h,077h,03eh
		defb 000h,000h,01eh,0f8h,0f8h,01eh,070h,01fh
		defb 000h,007h,01fh,033h,033h,0e7h,067h,03eh
		defb 000h,000h,01ch,031h,03ch,03eh,060h,03fh
		defb 000h,03ch,03fh,03ch,03ch,03ch,018h,018h
		defb 000h,000h,03eh,033h,033h,0e7h,00fh,07ch
		defb 000h,0f0h,03ch,0f3h,033h,033h,067h,060h
		defb 000h,03eh,03ch,03eh,03eh,03ch,01ch,07fh
		defb 000h,01eh,07eh,01eh,01eh,01eh,03eh,0f8h
		defb 01ch,0f8h,03ah,038h,03ch,02ah,07eh,021h
		defb 000h,07ch,07ch,07ch,07ch,03fh,038h,00eh
		defb 038h,000h,07eh,07fh,07fh,07fh,000h,000h
		defb 000h,000h,0bch,0c2h,0c0h,0c0h,0e6h,0e6h
		defb 000h,000h,03ch,0c2h,043h,03ch,0e7h,03ch
		defb 000h,000h,0fch,0ebh,0e0h,0e3h,0f0h,0f0h
		defb 000h,000h,01eh,033h,031h,063h,0e7h,03fh
		defb 000h,000h,01fh,07ch,078h,078h,030h,030h
		defb 000h,000h,01ch,0f8h,00eh,03eh,007h,07eh
		defb 000h,03ch,03ch,03ch,03ch,03fh,018h,00fh
		defb 000h,000h,039h,039h,07bh,0f3h,077h,03fh
		defb 000h,000h,041h,033h,01ch,018h,03ch,01ch
		defb 07eh,000h,0e1h,0feh,03eh,03ch,07fh,076h
		defb 000h,000h,073h,09eh,09eh,03ah,03eh,067h
		defb 000h,000h,031h,03bh,01ch,0beh,03ch,0f8h
		defb 07ch,000h,03eh,01fh,07ch,0ddh,030h,07fh
		defb 000h,03eh,03ch,07ch,03ch,03ch,03eh,018h
		defb 000h,03ch,03ch,03ch,03ch,03ch,03ch,03ch
		defb 000h,07ch,03ch,03eh,03eh,03ch,07ch,018h
		defb 000h,000h,000h,0fch,000h,0ffh,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,003h,002h,002h,003h,000h,03fh
		defb 000h,07fh,0f9h,009h,00fh,0fah,055h,0aah
		defb 000h,000h,000h,000h,000h,0feh,0d6h,0aah
		defb 000h,07fh,041h,041h,0ffh,0aah,0d7h,0feh
		defb 000h,000h,0feh,082h,082h,0feh,054h,0a8h
		defb 000h,07fh,041h,041h,07fh,02ah,0ffh,0aah
		defb 0feh,082h,082h,0feh,000h,000h,054h,0aah
		defb 000h,07fh,041h,041h,07fh,02ah,055h,02ah
		defb 03fh,020h,020h,03fh,000h,000h,000h,000h
		defb 080h,0ffh,0c1h,0c1h,07fh,02ah,055h,02ah
		defb 01fh,010h,010h,01fh,000h,000h,000h,000h
		defb 0c0h,07fh,041h,0c1h,07fh,02ah,055h,02ah
		defb 000h,000h,00fh,008h,008h,008h,00fh,00ah
		defb 000h,000h,0fch,004h,004h,004h,0fch,0a8h
		defb 00fh,038h,02fh,020h,025h,0feh,097h,0feh
		defb 0c0h,07ch,0c4h,03fh,061h,0bfh,0fch,0aah
		defb 035h,02ah,03fh,002h,001h,000h,000h,000h
		defb 0d5h,0a8h,0d0h,0a8h,050h,000h,000h,000h
		defb 0feh,0aah,000h,000h,000h,000h,000h,000h
		defb 055h,000h,054h,0aah,054h,0a8h,000h,000h
		defb 054h,0a8h,000h,000h,000h,000h,000h,000h
		defb 0d7h,0feh,054h,0aah,054h,0aah,000h,000h
		defb 055h,0abh,001h,001h,000h,000h,000h,000h
		defb 0fdh,004h,054h,0fch,054h,0a8h,000h,000h
		defb 015h,02bh,017h,02ah,003h,000h,000h,000h
		defb 055h,0f8h,058h,0a8h,0f8h,000h,000h,000h
		defb 01fh,01ah,015h,01fh,000h,000h,000h,000h
		defb 0d5h,0c0h,040h,0c0h,000h,000h,000h,000h
		defb 005h,00ah,005h,000h,000h,000h,000h,000h
		defb 054h,0a8h,054h,000h,000h,000h,000h,000h
		defb 015h,0aah,055h,0a8h,000h,000h,000h,000h
		defb 055h,0aah,054h,000h,000h,000h,000h,000h
		defb 000h,000h,001h,001h,001h,000h,000h,01fh
		defb 000h,07fh,0f1h,011h,0ffh,02ah,055h,02ah
		defb 000h,000h,000h,000h,000h,07ch,044h,07ch
		defb 000h,07fh,041h,041h,07fh,06eh,07dh,02ah
		defb 000h,000h,000h,0f8h,088h,0f8h,000h,028h
		defb 000h,07fh,041h,041h,07fh,02ah,055h,07eh
		defb 000h,07ch,044h,07ch,000h,000h,000h,028h
		defb 000h,07fh,041h,041h,07fh,02ah,055h,02ah
		defb 01fh,011h,01fh,000h,000h,000h,000h,000h
		defb 000h,07fh,041h,041h,07fh,02ah,055h,02ah
		defb 00fh,008h,00fh,000h,000h,000h,000h,000h
		defb 080h,0ffh,0c1h,041h,07fh,02ah,055h,02ah
		defb 0fch,084h,0fch,000h,054h,0a8h,054h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 078h,048h,078h,000h,050h,028h,050h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 015h,01fh,001h,000h,000h,000h,000h,000h
		defb 055h,000h,050h,0a0h,000h,000h,000h,000h
		defb 054h,028h,000h,000h,000h,000h,000h,000h
		defb 055h,000h,000h,028h,054h,000h,000h,000h
		defb 050h,000h,000h,000h,000h,000h,000h,000h
		defb 055h,07ch,000h,028h,054h,000h,000h,000h
		defb 054h,028h,000h,000h,000h,000h,000h,000h
		defb 055h,0f8h,088h,0f8h,050h,000h,000h,000h
		defb 000h,00bh,015h,001h,001h,000h,000h,000h
		defb 055h,0f0h,010h,0f0h,050h,000h,000h,000h
		defb 000h,00fh,00dh,00fh,000h,000h,000h,000h
		defb 055h,080h,080h,080h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,00fh,00ah,00ah,00bh,00fh,03fh
		defb 000h,07fh,0fdh,00dh,00fh,0feh,0fdh,0aah
		defb 000h,000h,00fh,008h,008h,0feh,0dfh,0aah
		defb 000h,07fh,0fdh,045h,0ffh,0aeh,0ffh,0feh
		defb 000h,000h,0ffh,08ah,08ah,0feh,05fh,0aah
		defb 000h,07fh,0fdh,045h,07fh,02eh,0ffh,0aah
		defb 0feh,082h,08fh,0feh,008h,008h,05fh,0aah
		defb 000h,07fh,0fdh,045h,07fh,02eh,0fdh,0aah
		defb 03fh,020h,02fh,03fh,008h,008h,00fh,00ah
		defb 080h,0ffh,0fdh,0c5h,07fh,02eh,0fdh,0aah
		defb 01fh,010h,01fh,01fh,008h,008h,00fh,00ah
		defb 0c0h,07fh,0fdh,0c5h,07fh,02eh,0fdh,0aah
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 035h,02ah,03fh,002h,001h,000h,000h,000h
		defb 0d5h,0a8h,0d4h,0a8h,050h,000h,000h,000h
		defb 0ffh,0aah,005h,000h,000h,000h,000h,000h
		defb 055h,0a8h,054h,0aah,054h,0a8h,000h,000h
		defb 055h,0aah,005h,000h,000h,000h,000h,000h
		defb 0d7h,0feh,054h,0aah,054h,0aah,000h,000h
		defb 055h,0abh,005h,001h,000h,000h,000h,000h
		defb 0fdh,0ach,054h,0fch,054h,0a8h,000h,000h
		defb 015h,02bh,017h,02ah,003h,000h,000h,000h
		defb 055h,0f8h,05ch,0a8h,0f8h,000h,000h,000h
		defb 01fh,01ah,015h,01fh,000h,000h,000h,000h
		defb 0d5h,0e8h,054h,0c0h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,00fh,009h,009h,008h,00fh,01fh
		defb 000h,07fh,0fdh,015h,0ffh,02eh,0fdh,0aah
		defb 000h,000h,00fh,008h,008h,07ch,04fh,07eh
		defb 000h,07fh,0fdh,045h,07fh,06eh,0fdh,0aah
		defb 000h,000h,00fh,0f8h,088h,0f8h,00fh,02ah
		defb 000h,07fh,0fdh,045h,07fh,02eh,0fdh,0feh
		defb 000h,07ch,04fh,07ch,008h,008h,00fh,02ah
		defb 000h,07fh,0fdh,045h,07fh,02eh,0fdh,0aah
		defb 01fh,011h,01fh,008h,008h,008h,00fh,00ah
		defb 000h,07fh,0fdh,045h,07fh,02eh,0fdh,0aah
		defb 00fh,008h,00fh,008h,008h,008h,00fh,00ah
		defb 080h,0ffh,0fdh,045h,07fh,02eh,0fdh,0aah
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 015h,01fh,005h,000h,000h,000h,000h,000h
		defb 055h,0a8h,054h,0a0h,000h,000h,000h,000h
		defb 055h,02ah,005h,000h,000h,000h,000h,000h
		defb 055h,0a8h,054h,028h,054h,000h,000h,000h
		defb 055h,00ah,005h,000h,000h,000h,000h,000h
		defb 055h,0fch,054h,028h,054h,000h,000h,000h
		defb 055h,02ah,005h,000h,000h,000h,000h,000h
		defb 055h,0f8h,0dch,0f8h,050h,000h,000h,000h
		defb 005h,00bh,015h,001h,001h,000h,000h,000h
		defb 055h,0f8h,054h,0f0h,050h,000h,000h,000h
		defb 005h,00fh,00dh,00fh,000h,000h,000h,000h
		defb 055h,0a8h,0d4h,080h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
		defb 000h,000h,000h,000h,000h,000h,000h,000h
#line 258
__LABEL__charset01end:
	jp __LABEL__attr01end
__LABEL__attr01:
#line 2
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$DF,$7F,$CF,$DF,$DF,$FF,$BF
		defb $FF,$47,$16,$BF,$FF,$FF,$FF,$FF
		defb $FF,$4F,$47,$17,$16,$16,$BF,$BF
		defb $FF,$7F,$4D,$16,$4B,$17,$BF,$BF
		defb $FF,$47,$DF,$1D,$1C,$1B,$BF,$BF
		defb $FF,$47,$6F,$17,$4C,$16,$BF,$BF
		defb $FF,$7F,$CF,$BF,$FF,$FF,$FF,$FF
		defb $FF,$DF,$7F,$6F,$6F,$CF,$CF,$BF
		defb $FF,$DF,$CF,$CF,$CF,$7F,$7F,$BF
		defb $FF,$FF,$D7,$BF,$BF,$FF,$FF,$FF
		defb $FF,$FF,$7F,$47,$7F,$6B,$BF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$7F,$7F,$BF
		defb $FF,$FF,$FF,$FF,$4F,$BF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$DF,$BF,$BF
		defb $FF,$DF,$7F,$6F,$6F,$7F,$6F,$BF
		defb $FF,$4D,$4C,$16,$16,$14,$BF,$BF
		defb $FF,$4D,$CF,$1F,$6F,$14,$BF,$BF
		defb $FF,$47,$CB,$7F,$7B,$14,$BF,$BF
		defb $FF,$47,$CB,$67,$BF,$47,$BF,$BF
		defb $FF,$DF,$17,$17,$14,$DB,$BF,$BF
		defb $FF,$4D,$6B,$4B,$CB,$14,$BF,$BF
		defb $FF,$4D,$7B,$14,$6C,$14,$BF,$BF
		defb $FF,$47,$CB,$7F,$7F,$7F,$BF,$BF
		defb $FF,$47,$C7,$46,$6C,$14,$BF,$BF
		defb $FF,$47,$C7,$1C,$6B,$16,$BF,$BF
		defb $FF,$FF,$7F,$7F,$BF,$7F,$BF,$BF
		defb $FF,$FF,$7F,$DF,$BF,$7F,$6F,$BF
		defb $BF,$FF,$7F,$4D,$17,$BF,$BF,$FF
		defb $FF,$FF,$FF,$4D,$1C,$FF,$BF,$FF
		defb $FF,$FF,$FD,$4D,$1D,$BF,$BF,$FF
		defb $FF,$4D,$CF,$7F,$7F,$DF,$FF,$BF
		defb $FF,$47,$4D,$11,$1C,$14,$16,$BF
		defb $FF,$DF,$17,$1D,$17,$1C,$BF,$BF
		defb $FF,$47,$6C,$14,$6C,$14,$BF,$BF
		defb $FF,$47,$B7,$6F,$DF,$4C,$BF,$BF
		defb $FF,$47,$C7,$6C,$67,$46,$BF,$BF
		defb $FF,$47,$6B,$14,$6B,$14,$BF,$BF
		defb $FF,$47,$6B,$14,$6B,$DF,$BF,$BF
		defb $FF,$47,$B7,$14,$67,$1C,$BF,$BF
		defb $FF,$D7,$6C,$14,$16,$16,$BF,$BF
		defb $FF,$4D,$6F,$DF,$CF,$1D,$BF,$BF
		defb $FF,$47,$CF,$6F,$DF,$4D,$BF,$BF
		defb $FF,$D7,$14,$16,$DC,$4C,$BF,$BF
		defb $FF,$DF,$CF,$7F,$CF,$14,$BF,$BB
		defb $FF,$47,$14,$1C,$6C,$6C,$BF,$BF
		defb $FF,$4D,$14,$14,$1C,$16,$BF,$BF
		defb $FF,$47,$46,$17,$1D,$14,$BF,$BF
		defb $BF,$4D,$16,$14,$1B,$1B,$BF,$BF
		defb $FF,$47,$4C,$1C,$6C,$4C,$7B,$BF
		defb $FF,$4D,$6C,$14,$67,$6C,$BF,$BF
		defb $FF,$47,$B7,$4D,$7B,$14,$BF,$BF
		defb $FF,$47,$CB,$6F,$7F,$7F,$BF,$BF
		defb $FF,$4D,$6C,$6C,$6C,$14,$BF,$BF
		defb $FF,$47,$1C,$1C,$6C,$6F,$BF,$BF
		defb $FF,$4D,$14,$14,$1C,$1C,$BF,$BF
		defb $FF,$4D,$4C,$CB,$1D,$46,$BF,$BF
		defb $FF,$4D,$4C,$6C,$6F,$DF,$BF,$BF
		defb $FF,$4D,$CB,$7F,$6F,$14,$BF,$BF
		defb $FF,$7F,$6F,$7F,$CF,$DF,$DF,$BF
		defb $FF,$7F,$DF,$CF,$DF,$CF,$DF,$BF
		defb $FF,$DF,$CF,$1F,$DF,$CF,$17,$BF
		defb $FF,$47,$D7,$BF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$47
		defb $DF,$7F,$BF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$4D,$7F,$C7,$17,$BF,$BF
		defb $FF,$7F,$4D,$D7,$6C,$14,$BF,$BF
		defb $FF,$FF,$47,$7F,$6F,$4C,$BF,$BF
		defb $FF,$7F,$47,$D7,$6C,$14,$BF,$BF
		defb $FF,$FF,$4D,$D7,$16,$16,$BF,$BF
		defb $FF,$DF,$17,$DF,$6F,$6F,$BF,$BF
		defb $FF,$FF,$47,$D7,$6C,$14,$6F,$6B
		defb $FF,$DF,$4D,$D7,$6C,$6C,$BF,$BF
		defb $FF,$DF,$17,$DF,$CF,$17,$BF,$BF
		defb $FF,$7F,$7F,$DF,$CF,$DF,$7F,$7F
		defb $BF,$DF,$47,$1D,$1D,$1C,$BF,$BF
		defb $FF,$7F,$CF,$1F,$DF,$CF,$BF,$BF
		defb $BF,$FF,$47,$47,$1C,$1C,$BB,$BB
		defb $FF,$FF,$4D,$4D,$16,$16,$BF,$BF
		defb $FF,$FF,$4D,$4D,$1C,$46,$BF,$BF
		defb $FF,$FF,$4D,$47,$16,$14,$6F,$6B
		defb $FF,$FF,$47,$D7,$6C,$14,$BF,$BF
		defb $FF,$FF,$47,$DF,$6B,$6F,$BF,$BF
		defb $FF,$FF,$47,$DF,$4C,$17,$BF,$BF
		defb $FF,$DF,$4D,$CF,$6F,$DF,$BF,$BF
		defb $FF,$FF,$D7,$D7,$67,$14,$BF,$BF
		defb $FF,$FF,$47,$D7,$46,$16,$BF,$BF
		defb $BF,$FF,$D7,$4D,$4C,$1C,$BF,$BF
		defb $FF,$FF,$D7,$D7,$6C,$47,$BF,$BF
		defb $FF,$FF,$D7,$D7,$46,$CF,$CF,$6F
		defb $BF,$FF,$47,$7F,$7B,$14,$BF,$BF
		defb $FF,$7F,$7F,$7F,$CF,$CF,$DF,$BF
		defb $FF,$7F,$6F,$6F,$DF,$7F,$CF,$7F
		defb $FF,$7F,$CF,$DF,$DF,$6F,$7F,$BF
		defb $FF,$FF,$FF,$7F,$FF,$BB,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $BF,$BF,$BF,$BF,$BF,$BF,$BF,$BF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
		defb $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
#line 258
__LABEL__attr01end:
	jp __LABEL__bininc01end
__LABEL__spr02:
#line 20
		incbin "library/sprites.bin"
#line 21
__LABEL__map01:
#line 24
		incbin "library/map.bin"
#line 25
__LABEL__bininc01end:
	ld hl, 0
	ld (_seed), hl
	ld hl, 0
	ld (_score), hl
	ld hl, 0
	ld (_hiscore), hl
	ld hl, 1
	ld (_level), hl
	ld a, 1
	push af
	ld a, 15
	push af
	ld a, 6
	push af
	call _msxcolor
	xor a
	push af
	xor a
	push af
	xor a
	push af
	ld a, 2
	call _msxscreen
	call _msx16x16sprites
	ld a, 2
	call _msxsnsmat
	push af
	ld h, 64
	pop af
	and h
	or a
	jp z, __LABEL1
	ld hl, 546
	push hl
	ld hl, 1
	push hl
	call _msxpalettehx
	ld hl, 6
	push hl
	ld hl, 4
	push hl
	call _msxpalettehx
	ld hl, 3328
	push hl
	ld hl, 6
	push hl
	call _msxpalettehx
	ld hl, 190
	push hl
	ld hl, 7
	push hl
	call _msxpalettehx
	ld hl, 4048
	push hl
	ld hl, 10
	push hl
	call _msxpalettehx
	ld hl, 160
	push hl
	ld hl, 12
	push hl
	call _msxpalettehx
	ld hl, 3592
	push hl
	ld hl, 13
	push hl
	call _msxpalettehx
	ld hl, 4095
	push hl
	ld hl, 15
	push hl
	call _msxpalettehx
__LABEL1:
	ld hl, 0
	ld (_eee), hl
	jp __LABEL2
__LABEL6:
	ld hl, 1024
	push hl
	ld hl, __LABEL__charset01
	push hl
	ld hl, (_eee)
	push hl
	call _msx1ldirvm
	ld hl, 1024
	push hl
	ld hl, 175
	push hl
	ld hl, (_eee)
	ld de, 8192
	add hl, de
	push hl
	call _msx1filvrm
	ld hl, 1024
	push hl
	ld hl, 122
	push hl
	ld hl, (_eee)
	ld de, 1024
	add hl, de
	ld de, 8192
	add hl, de
	push hl
	call _msx1filvrm
	ld hl, 768
	push hl
	ld hl, __LABEL__attr01
	push hl
	ld hl, (_eee)
	ld de, 8192
	add hl, de
	ld de, 256
	add hl, de
	push hl
	call _msx1ldirvm
__LABEL7:
	ld hl, (_eee)
	ld de, 2048
	add hl, de
	ld (_eee), hl
__LABEL2:
	ld hl, 6143
	ld de, (_eee)
	or a
	sbc hl, de
	jp nc, __LABEL6
__LABEL5:
	ld hl, 1024
	push hl
	ld hl, __LABEL__spr02
	push hl
	ld hl, 14336
	push hl
	call _msx1ldirvm
	ld hl, 1024
	push hl
	ld hl, __LABEL__spr02
	push hl
	ld hl, 15360
	push hl
	call _msx1ldirvm
__LABEL__mainloop01:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL8
__LABEL12:
	ld hl, 32
	push hl
	ld hl, (_ee0)
	ld de, 64
	call __MUL16_FAST
	ex de, hl
	ld hl, __LABEL__map01
	add hl, de
	push hl
	ld hl, (_ee0)
	ld de, 32
	call __MUL16_FAST
	ld de, 6144
	add hl, de
	push hl
	call _msx1ldirvm
__LABEL13:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL8:
	ld hl, 23
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL12
__LABEL11:
	ld hl, __LABEL__text01end - __LABEL__text01
	push hl
	ld hl, __LABEL__text01
	push hl
	ld hl, 6723
	push hl
	call _msx1ldirvm
	ld hl, __LABEL__text02end - __LABEL__text02
	push hl
	ld hl, __LABEL__text02
	push hl
	ld hl, 6755
	push hl
	call _msx1ldirvm
	ld hl, __LABEL__text03end - __LABEL__text03
	push hl
	ld hl, __LABEL__text03
	push hl
	ld hl, 6819
	push hl
	call _msx1ldirvm
__LABEL__loopkbd111a:
	ld hl, 255
	ld (_eee), hl
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL14
__LABEL18:
	ld hl, (_ee1)
	ld a, l
	call _msxsnsmat
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_eee)
	call __BAND16
	ld (_eee), hl
__LABEL19:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL14:
	ld hl, 8
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL18
__LABEL17:
	ld de, 255
	ld hl, (_eee)
	call __EQ16
	or a
	jp z, __LABEL21
	jp __LABEL__loopkbd111a
__LABEL21:
	ld hl, 127
	ld (_eee), hl
	ld hl, 112
	ld (_xdrc), hl
	ld hl, 40
	ld (_xpos), hl
	ld hl, 114
	ld (_ypos), hl
	ld hl, 7
	ld (_cpos), hl
	ld hl, (_xpos)
	ld (_oxsh), hl
	ld hl, (_ypos)
	ld (_oysh), hl
	ld hl, 0
	ld (_shot), hl
	ld hl, 0
	ld (_eee), hl
	ld hl, 999
	ld (_ee4), hl
	ld hl, 0
	ld (_score), hl
	ld hl, 99
	ld (_stamina), hl
	ld hl, 1
	ld (_level), hl
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL22
__LABEL26:
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	push hl
	ld a, 240
	pop hl
	ld (hl), a
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	push hl
	xor a
	pop hl
	ld (hl), a
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57410
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57411
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
__LABEL27:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL22:
	ld hl, 3
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL26
__LABEL25:
__LABEL__gameloop01:
	call _msxwaitvbldeprecated
	ld hl, (_eee)
	inc hl
	ld (_eee), hl
	ld hl, (_ee4)
	dec hl
	ld (_ee4), hl
	ld a, 8
	call _msxsnsmat
	push af
	ld h, 128
	pop af
	and h
	sub 1
	jp nc, __LABEL29
	ld hl, (_xpos)
	inc hl
	inc hl
	ld (_xpos), hl
	ld hl, (_xdrc)
	ld de, 16
	add hl, de
	ld (_xdrc), hl
__LABEL29:
	ld a, 8
	call _msxsnsmat
	push af
	ld h, 16
	pop af
	and h
	sub 1
	jp nc, __LABEL31
	ld hl, (_xpos)
	dec hl
	dec hl
	ld (_xpos), hl
	ld hl, (_xdrc)
	ld de, -16
	add hl, de
	ld (_xdrc), hl
__LABEL31:
	ld a, 8
	call _msxsnsmat
	push af
	ld h, 64
	pop af
	and h
	sub 1
	jp nc, __LABEL33
	ld hl, (_ypos)
	inc hl
	inc hl
	ld (_ypos), hl
	ld hl, (_xdrc)
	ld de, 16
	add hl, de
	ld (_xdrc), hl
__LABEL33:
	ld a, 8
	call _msxsnsmat
	push af
	ld h, 32
	pop af
	and h
	sub 1
	jp nc, __LABEL35
	ld hl, (_ypos)
	dec hl
	dec hl
	ld (_ypos), hl
	ld hl, (_xdrc)
	ld de, -16
	add hl, de
	ld (_xdrc), hl
__LABEL35:
	ld a, 8
	call _msxsnsmat
	push af
	ld h, 1
	pop af
	and h
	sub 1
	sbc a, a
	push af
	ld de, 0
	ld hl, (_shot)
	call __EQ16
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL37
	ld hl, 1
	ld (_shot), hl
__LABEL37:
	ld de, 8
	ld hl, (_xpos)
	or a
	sbc hl, de
	jp nc, __LABEL39
	ld hl, 8
	ld (_xpos), hl
__LABEL39:
	ld de, 16
	ld hl, (_ypos)
	or a
	sbc hl, de
	jp nc, __LABEL41
	ld hl, 16
	ld (_ypos), hl
__LABEL41:
	ld hl, 232
	ld de, (_xpos)
	or a
	sbc hl, de
	jp nc, __LABEL43
	ld hl, 232
	ld (_xpos), hl
__LABEL43:
	ld hl, 160
	ld de, (_ypos)
	or a
	sbc hl, de
	jp nc, __LABEL45
	ld hl, 160
	ld (_ypos), hl
__LABEL45:
	ld de, 112
	ld hl, (_xdrc)
	or a
	sbc hl, de
	jp nc, __LABEL47
	ld hl, (_xdrc)
	ld de, 8
	add hl, de
	ld (_xdrc), hl
__LABEL47:
	ld hl, 112
	ld de, (_xdrc)
	or a
	sbc hl, de
	jp nc, __LABEL49
	ld hl, (_xdrc)
	ld de, -8
	add hl, de
	ld (_xdrc), hl
__LABEL49:
	ld de, 32
	ld hl, (_xdrc)
	or a
	sbc hl, de
	jp nc, __LABEL51
	ld hl, 32
	ld (_xdrc), hl
__LABEL51:
	ld hl, 192
	ld de, (_xdrc)
	or a
	sbc hl, de
	jp nc, __LABEL53
	ld hl, 192
	ld (_xdrc), hl
__LABEL53:
	ld hl, (_ypos)
	ld de, 4
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld hl, (_xpos)
	ld de, 8
	call __DIVU16
	ld de, 0
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld (_oxfriso), hl
	ld hl, (_eee)
	srl h
	rr l
	ld de, 0
	push de
	push hl
	ld hl, (_oxfriso)
	ld de, 0
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	push hl
	push de
	ld de, 0
	ld hl, 32
	call __SWAP32
	call __MODI32
	ld (_ee1), hl
	ld hl, (_eee)
	ld de, 4
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 24
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 23
	push bc
	call __SUB32
	push de
	push hl
	ld hl, (_oxfriso)
	srl h
	rr l
	ld de, 0
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	push hl
	push de
	ld de, 0
	ld hl, 24
	call __SWAP32
	call __MODI32
	ld (_ee2), hl
	ld hl, (_ypos)
	add hl, hl
	ld de, 0
	push de
	push hl
	ld hl, (_xpos)
	ld de, 0
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld (_oxfriso2), hl
	ld de, 2
	ld hl, (_eee)
	call __BAND16
	ld de, 16
	call __MUL16_FAST
	ld de, 64
	add hl, de
	ld de, 0
	push de
	push hl
	ld hl, (_xdrc)
	ld de, 32
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 1
	call __SUB32
	push de
	push hl
	ld de, 0
	ld hl, 4
	call __MUL32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld (_spq0), hl
	ld de, 0
	ld hl, (_shot)
	call __EQ16
	or a
	jp z, __LABEL54
	ld hl, (_cpos)
	ld a, l
	push af
	ld hl, (_spq0)
	ld a, l
	push af
	ld hl, (_ypos)
	ld a, l
	push af
	ld hl, (_xpos)
	ld a, l
	push af
	xor a
	push af
	call _msx1putsprite
	ld a, 14
	push af
	ld hl, (_spq0)
	ld a, l
	push af
	ld a, 200
	push af
	ld hl, (_xpos)
	ld a, l
	push af
	ld a, 1
	push af
	call _msx1putsprite
	ld hl, (_xpos)
	ld (_oxsh), hl
	ld hl, (_ypos)
	ld (_oysh), hl
	jp __LABEL55
__LABEL54:
	ld hl, (_cpos)
	ld a, l
	push af
	ld a, 24
	push af
	ld hl, (_ypos)
	ld a, l
	push af
	ld hl, (_xpos)
	ld a, l
	push af
	xor a
	push af
	call _msx1putsprite
	ld hl, (_cpos)
	ld a, l
	push af
	ld hl, (_spq0)
	ld de, -64
	add hl, de
	ld a, l
	push af
	ld hl, (_oysh)
	ld a, l
	push af
	ld hl, (_oxsh)
	ld a, l
	push af
	ld a, 1
	push af
	call _msx1putsprite
	ld hl, (_oxsh)
	ld de, 16
	add hl, de
	ld (_oxsh), hl
	ld hl, (_oysh)
	ld de, -8
	add hl, de
	ld (_oysh), hl
__LABEL55:
	ld de, 0
	ld hl, (_oysh)
	or a
	sbc hl, de
	sbc a, a
	push af
	ld hl, 256
	ld de, (_oxsh)
	or a
	sbc hl, de
	sbc a, a
	ld h, a
	pop af
	or h
	or a
	jp z, __LABEL57
	ld hl, 0
	ld (_shot), hl
	ld hl, (_xpos)
	ld (_oxsh), hl
	ld hl, (_ypos)
	ld (_oysh), hl
__LABEL57:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL58
__LABEL62:
	ld a, 13
	push af
	ld a, 28
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld hl, (_oxfriso2)
	srl h
	rr l
	ld de, 0
	call __SUB32
	ld a, l
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld de, (_oxfriso2)
	or a
	sbc hl, de
	ld a, l
	push af
	ld hl, (_ee0)
	ld de, 16
	add hl, de
	ld a, l
	push af
	call _msx1putsprite
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	push hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57410
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld h, 32
	call __DIVU8_FAST
	ld h, a
	pop af
	add a, h
	sub 4
	pop hl
	ld (hl), a
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	push hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57411
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld h, 32
	call __DIVU8_FAST
	ld h, a
	pop af
	add a, h
	sub 4
	pop hl
	ld (hl), a
__LABEL63:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL58:
	ld hl, 3
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL62
__LABEL61:
	ld de, 0
	ld hl, (_shot)
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL65
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL66
__LABEL70:
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld de, (_oxfriso2)
	or a
	sbc hl, de
	push hl
	ld de, 255
	pop hl
	call __BAND16
	ld de, (_oxsh)
	or a
	sbc hl, de
	push hl
	ld de, 16
	pop hl
	or a
	sbc hl, de
	sbc a, a
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld hl, (_oxfriso2)
	srl h
	rr l
	ld de, 0
	call __SUB32
	push de
	push hl
	ld de, 0
	ld hl, 255
	call __BAND32
	push de
	push hl
	ld hl, (_oysh)
	ld de, 0
	call __SUB32
	call __ABS32
	push de
	push hl
	ld de, 0
	ld hl, 16
	call __LTI32
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL73
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_score)
	inc hl
	ld (_score), hl
__LABEL73:
__LABEL71:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL66:
	ld hl, 3
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL70
__LABEL69:
__LABEL65:
	ld hl, (_hiscore)
	ld de, (_score)
	or a
	sbc hl, de
	jp nc, __LABEL75
	ld hl, (_score)
	ld (_hiscore), hl
__LABEL75:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL76
__LABEL80:
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57408
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld de, (_oxfriso2)
	or a
	sbc hl, de
	push hl
	ld de, 255
	pop hl
	call __BAND16
	ld de, (_xpos)
	or a
	sbc hl, de
	push hl
	ld de, 16
	pop hl
	or a
	sbc hl, de
	sbc a, a
	push af
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57409
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld hl, (_oxfriso2)
	srl h
	rr l
	ld de, 0
	call __SUB32
	push de
	push hl
	ld de, 0
	ld hl, 255
	call __BAND32
	push de
	push hl
	ld hl, (_ypos)
	ld de, 0
	call __SUB32
	call __ABS32
	push de
	push hl
	ld de, 0
	ld hl, 16
	call __LTI32
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL83
	ld hl, (_stamina)
	dec hl
	ld (_stamina), hl
__LABEL83:
__LABEL81:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL76:
	ld hl, 3
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL80
__LABEL79:
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld de, 255
	ld hl, (_seed)
	call __BAND16
	push hl
	ld de, 32
	pop hl
	or a
	sbc hl, de
	jp nc, __LABEL85
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld de, 3
	ld hl, (_seed)
	call __BAND16
	ld (_ee0), hl
	add hl, hl
	add hl, hl
	ld de, 57410
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	ld de, 57411
	add hl, de
	push hl
	ld hl, (_seed)
	ld a, l
	pop hl
	ld (hl), a
	ld hl, (_seed)
	call _msxrnd
	ld (_seed), hl
__LABEL85:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL86
__LABEL90:
	ld hl, 32
	push hl
	ld de, (_ee0)
	ld hl, (_ee2)
	add hl, de
	ld de, 64
	call __MUL16_FAST
	ex de, hl
	ld hl, __LABEL__map01
	add hl, de
	ex de, hl
	ld hl, (_ee1)
	add hl, de
	push hl
	ld hl, (_ee0)
	ld de, 32
	call __MUL16_FAST
	ld de, 6144
	add hl, de
	push hl
	call _msx1ldirvm
__LABEL91:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL86:
	ld hl, 23
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL90
__LABEL89:
	ld hl, 3000
	ld de, (_eee)
	or a
	sbc hl, de
	jp nc, __LABEL93
	ld hl, (_level)
	inc hl
	ld (_level), hl
__LABEL93:
	ld hl, 2
	push hl
	ld hl, __LABEL__text04
	push hl
	ld hl, 6886
	push hl
	call _msx1ldirvm
	ld hl, (_score)
	push hl
	ld hl, 744
	push hl
	call _zprintdecimal4
	ld hl, 2
	push hl
	ld hl, __LABEL__text04 + 6
	push hl
	ld hl, 6893
	push hl
	call _msx1ldirvm
	ld hl, (_hiscore)
	push hl
	ld hl, 751
	push hl
	call _zprintdecimal4
	ld hl, 2
	push hl
	ld hl, __LABEL__text04 + 12
	push hl
	ld hl, 6900
	push hl
	call _msx1ldirvm
	ld hl, (_stamina)
	push hl
	ld hl, 758
	push hl
	call _zprintdecimal2
	ld hl, 2
	push hl
	ld hl, __LABEL__text04 + 16
	push hl
	ld hl, 6905
	push hl
	call _msx1ldirvm
	ld hl, (_level)
	push hl
	ld hl, 763
	push hl
	call _zprintdecimal2
	ld hl, 0
	ld de, (_stamina)
	or a
	sbc hl, de
	jp nc, __LABEL95
	jp __LABEL__gameloop01
__LABEL95:
	ld hl, (_score)
	ld (_hiscore), hl
	ld hl, 12
	push hl
	ld hl, __LABEL__text05
	push hl
	ld hl, 6666
	push hl
	call _msx1ldirvm
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL96
__LABEL100:
	call _msxwaitvbldeprecated
__LABEL101:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL96:
	ld hl, 100
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL100
__LABEL99:
	jp __LABEL__mainloop01
__LABEL__text01:
#line 302
		defb "CMJN"
#line 303
__LABEL__text01end:
__LABEL__text02:
#line 307
		defb "Paulo Silva - jun'14"
#line 308
__LABEL__text02end:
__LABEL__text03:
#line 312
		defb "Push any key"
#line 313
__LABEL__text03end:
__LABEL__text04:
#line 317
		defb "sc0000hs0000pw99st01"
#line 318
__LABEL__text04end:
__LABEL__text05:
#line 322
		defb "Game over..."
#line 323
__LABEL__text05end:
	ld hl, 0
	ld b, h
	ld c, l
__END_PROGRAM:
	di
	ld hl, (__CALL_BACK__)
	ld sp, hl
	exx
	pop hl
	exx
	pop iy
	pop ix
	ei
	ret
__CALL_BACK__:
	DEFW 0
_msx1filvrm:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld h, (ix+5)
		ld l, (ix+4)
		ld a, (ix+6)
		ld b, (ix+9)
		ld c, (ix+8)
		call $0056
#line 7
_msx1filvrm__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_msx1ldirvm:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld d, (ix+5)
		ld e, (ix+4)
		ld h, (ix+7)
		ld l, (ix+6)
		ld b, (ix+9)
		ld c, (ix+8)
		call $005C
#line 8
_msx1ldirvm__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_msxcolor:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+5)
	ld (62441), a
	ld a, (ix+7)
	ld (62442), a
	ld a, (ix+9)
	ld (62443), a
_msxcolor__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_msxscreen:
#line 2
		call $005F
#line 3
_msxscreen__leave:
	ret
_setscreen12:
	push ix
	ld ix, 0
	add ix, sp
#line 14
		ld a,8
		call $005F
		ld b,$08
		ld c,25
		call $0047
#line 19
_setscreen12__leave:
	ld sp, ix
	pop ix
	ret
_setscreen10:
	push ix
	ld ix, 0
	add ix, sp
#line 24
		ld a,8
		call $005F
		ld b,$18
		ld c,25
		call $0047
#line 29
_setscreen10__leave:
	ld sp, ix
	pop ix
	ret
_msx1vpoke:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld h, (ix+5)
		ld l, (ix+4)
		ld a, (ix+6)
		call $004D
#line 5
_msx1vpoke__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_msxpalette:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		di
		ld a, (ix+4)
		out ($99),a
		ld a,$90
		out ($99),a
		ld a, (ix+6)
		out ($9a),a
		ld a, (ix+7)
		out ($9a),a
		ei
#line 11
_msxpalette__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_msxpalettef:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 1792
	pop hl
	call __BAND16
	ld de, 16
	call __DIVU16
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 112
	pop hl
	call __BAND16
	ld de, 16
	call __MUL16_FAST
	ex de, hl
	pop hl
	call __BOR16
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 7
	pop hl
	call __BAND16
	ex de, hl
	pop hl
	call __BOR16
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	push hl
	call _msxpalette
_msxpalettef__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_msxpalettehx:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 3584
	pop hl
	call __BAND16
	ld de, 32
	call __DIVU16
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 224
	pop hl
	call __BAND16
	add hl, hl
	add hl, hl
	add hl, hl
	ex de, hl
	pop hl
	call __BOR16
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld de, 14
	pop hl
	call __BAND16
	srl h
	rr l
	ex de, hl
	pop hl
	call __BOR16
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	push hl
	call _msxpalette
_msxpalettehx__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_msx1putsprite:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+9)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	push hl
	call _msx1vpoke
	ld a, (ix+7)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	push hl
	call _msx1vpoke
	ld a, (ix+11)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	inc hl
	push hl
	call _msx1vpoke
	ld a, (ix+13)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _msx1vpoke
_msx1putsprite__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_msxsnsmat:
#line 1
		call $0141
#line 2
_msxsnsmat__leave:
	ret
_msx16x16sprites:
	push ix
	ld ix, 0
	add ix, sp
#line 2
		ld a, ($F3E0)
		or 00000010b
		and 11111110b
		ld b,a
		ld c,1
		call $0047
#line 8
_msx16x16sprites__leave:
	ld sp, ix
	pop ix
	ret
_msxrnd:
#line 2
		ld  d, h
		ld  e, l
		ld  a, d
		ld  h, e
		ld  l, 253
		or  a
		sbc  hl, de
		sbc  a, 0
		sbc  hl, de
		ld  d, 0
		sbc  a, d
		ld  e, a
		sbc  hl, de
		jr  nc, smsrndloop
		inc  hl
smsrndloop:
		ret
#line 19
_msxrnd__leave:
	ret
_msxwaitvbldeprecated:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		halt
#line 2
_msxwaitvbldeprecated__leave:
	ld sp, ix
	pop ix
	ret
_zprintdecimal:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 1000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 100
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	ld de, 4
	add hl, de
	push hl
	call _msx1vpoke
_zprintdecimal__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal4:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 1000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 100
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _msx1vpoke
_zprintdecimal4__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal2:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _msx1vpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _msx1vpoke
_zprintdecimal2__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
#line 1 "mul16.asm"
__MUL16:	; Mutiplies HL with the last value stored into de stack
				; Works for both signed and unsigned
	
			PROC
	
			LOCAL __MUL16LOOP
	        LOCAL __MUL16NOADD
			
			ex de, hl
			pop hl		; Return address
			ex (sp), hl ; CALLEE caller convention
	
;;__MUL16_FAST:	; __FASTCALL ENTRY: HL = 1st operand, DE = 2nd Operand
	;;		ld c, h
	;;		ld a, l	 ; C,A => 1st Operand
	;;
	;;		ld hl, 0 ; Accumulator
	;;		ld b, 16
	;;
;;__MUL16LOOP:
	;;		sra c	; C,A >> 1  (Arithmetic)
	;;		rra
	;;
	;;		jr nc, __MUL16NOADD
	;;		add hl, de
	;;
;;__MUL16NOADD:
	;;		sla e
	;;		rl d
	;;			
	;;		djnz __MUL16LOOP
	
__MUL16_FAST:
	        ld b, 16
	        ld a, d
	        ld c, e
	        ex de, hl
	        ld hl, 0
	
__MUL16LOOP:
	        add hl, hl  ; hl << 1
	        sla c
	        rla         ; a,c << 1
	        jp nc, __MUL16NOADD
	        add hl, de
	
__MUL16NOADD:
	        djnz __MUL16LOOP
	
			ret	; Result in hl (16 lower bits)
	
			ENDP
	
#line 2468 "cmjn.bas"
#line 1 "bor16.asm"
; vim:ts=4:et:
	; FASTCALL bitwise or 16 version.
	; result in HL
; __FASTCALL__ version (operands: A, H)
	; Performs 16bit or 16bit and returns the boolean
; Input: HL, DE
; Output: HL <- HL OR DE
	
__BOR16:
		ld a, h
		or d
	    ld h, a
	
	    ld a, l
	    or e
	    ld l, a
	
	    ret 
	
#line 2469 "cmjn.bas"
#line 1 "abs32.asm"
	; 16 bit signed integer abs value 
	; HL = value
	
#line 1 "neg32.asm"
__ABS32:
		bit 7, d
		ret z
	
__NEG32: ; Negates DEHL (Two's complement)
		ld a, l
		cpl
		ld l, a
	
		ld a, h
		cpl
		ld h, a
	
		ld a, e
		cpl
		ld e, a
		
		ld a, d
		cpl
		ld d, a
	
		inc l
		ret nz
	
		inc h
		ret nz
	
		inc de
		ret
	
#line 5 "abs32.asm"
	
#line 2470 "cmjn.bas"
#line 1 "band32.asm"
	; FASTCALL bitwise and 32 version.
	; Performs 32bit and 32bit and returns the bitwise
	; result in DE,HL
	; First operand in DE,HL 2nd operand into the stack
	
__BAND32:
	    ld b, h
	    ld c, l ; BC <- HL
	
	    pop hl  ; Return address
	    ex (sp), hl ; HL <- Lower part of 2nd Operand
	
		ld a, b
	    and h
	    ld b, a
	
	    ld a, c
	    and l
	    ld c, a ; BC <- BC & HL
	
		pop hl  ; Return dddress
	    ex (sp), hl ; HL <- High part of 2nd Operand
	
	    ld a, d
	    and h
	    ld d, a
	
	    ld a, e
	    and l
	    ld e, a ; DE <- DE & HL
	
	    ld h, b
	    ld l, c ; HL <- BC  ; Always return DE,HL pair regs
	
	    ret
	
#line 2471 "cmjn.bas"
#line 1 "div32.asm"
	
	
				 ; ---------------------------------------------------------
__DIVU32:    ; 32 bit unsigned division
	             ; DEHL = Dividend, Stack Top = Divisor
	             ; OPERANDS P = Dividend, Q = Divisor => OPERATION => P / Q
				 ;
				 ; Changes A, BC DE HL B'C' D'E' H'L'
				 ; ---------------------------------------------------------
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
__DIVU32START: ; Performs D'E'H'L' / HLDE
	        ; Now switch to DIVIDEND = B'C'BC / DIVISOR = D'E'DE (A / B)
	        push de ; push Lowpart(Q)
			ex de, hl	; DE = HL
	        ld hl, 0
	        exx
	        ld b, h
	        ld c, l
	        pop hl
	        push de
	        ex de, hl
	        ld hl, 0        ; H'L'HL = 0
	        exx
	        pop bc          ; Pop HightPart(B) => B = B'C'BC
	        exx
	
	        ld a, 32 ; Loop count
	
__DIV32LOOP:
	        sll c  ; B'C'BC << 1 ; Output most left bit to carry
	        rl  b
	        exx
	        rl c
	        rl b
	        exx
	
	        adc hl, hl
	        exx
	        adc hl, hl
	        exx
	
	        sbc hl,de
	        exx
	        sbc hl,de
	        exx
	        jp nc, __DIV32NOADD	; use JP inside a loop for being faster
	
	        add hl, de
	        exx
	        adc hl, de
	        exx
	        dec bc
	
__DIV32NOADD:
	        dec a
	        jp nz, __DIV32LOOP	; use JP inside a loop for being faster
	        ; At this point, quotient is stored in B'C'BC and the reminder in H'L'HL
	
	        push hl
	        exx
	        pop de
	        ex de, hl ; D'E'H'L' = 32 bits modulus
	        push bc
	        exx
	        pop de    ; DE = B'C'
	        ld h, b
	        ld l, c   ; DEHL = quotient D'E'H'L' = Modulus
	
	        ret     ; DEHL = quotient, D'E'H'L' = Modulus
	
	
	
__MODU32:    ; 32 bit modulus for 32bit unsigned division
	             ; DEHL = Dividend, Stack Top = Divisor (DE, HL)
	
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
	        call __DIVU32START	; At return, modulus is at D'E'H'L'
	
__MODU32START:
	
			exx
			push de
			push hl
	
			exx 
			pop hl
			pop de
	
			ret
	
	
__DIVI32:    ; 32 bit signed division
	             ; DEHL = Dividend, Stack Top = Divisor
	             ; A = Dividend, B = Divisor => A / B
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
__DIVI32START:
			exx
			ld a, d	 ; Save sign
			ex af, af'
			bit 7, d ; Negative?
			call nz, __NEG32 ; Negates DEHL
	
			exx		; Now works with H'L'D'E'
			ex af, af'
			xor h
			ex af, af'  ; Stores sign of the result for later
	
			bit 7, h ; Negative?
			ex de, hl ; HLDE = DEHL
			call nz, __NEG32
			ex de, hl 
	
			call __DIVU32START
			ex af, af' ; Recovers sign
			and 128	   ; positive?
			ret z
	
			jp __NEG32 ; Negates DEHL and returns from there
			
			
__MODI32:	; 32bits signed division modulus
			exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
			call __DIVI32START
			jp __MODU32START		
	
#line 2472 "cmjn.bas"
#line 1 "and8.asm"
	; FASTCALL boolean and 8 version.
	; result in Accumulator (0 False, not 0 True)
; __FASTCALL__ version (operands: A, H)
	; Performs 8bit and 8bit and returns the boolean
	
__AND8:
		or a
		ret z
		ld a, h
		ret 
	
#line 2473 "cmjn.bas"
#line 1 "sub32.asm"
	; SUB32 
	; TOP of the stack - DEHL
	; Pops operand out of the stack (CALLEE)
	; and returns result in DEHL
	; Operands come reversed => So we swap then using EX (SP), HL
	
__SUB32:
		exx
		pop bc		; Return address
		exx
	
		ex (sp), hl
		pop bc
		or a 
		sbc hl, bc
	
		ex de, hl
		ex (sp), hl
		pop bc
		sbc hl, bc
		ex de, hl
	
		exx
		push bc		; Put return address
		exx
		ret
		
	
	
#line 2474 "cmjn.bas"
#line 1 "div8.asm"
				; --------------------------------
__DIVU8:	; 8 bit unsigned integer division 
				; Divides (Top of stack, High Byte) / A
		pop hl	; --------------------------------
		ex (sp), hl	; CALLEE
	
__DIVU8_FAST:	; Does A / H
		ld l, h
		ld h, a		; At this point do H / L
	
		ld b, 8
		xor a		; A = 0, Carry Flag = 0
		
__DIV8LOOP:
		sla	h		
		rla			
		cp	l		
		jr	c, __DIV8NOSUB
		sub	l		
		inc	h		
	
__DIV8NOSUB:	
		djnz __DIV8LOOP
	
		ld	l, a		; save remainder
		ld	a, h		; 
		
		ret			; a = Quotient, 
	
	
					; --------------------------------
__DIVI8:		; 8 bit signed integer division Divides (Top of stack) / A
		pop hl		; --------------------------------
		ex (sp), hl
	
__DIVI8_FAST:
		ld e, a		; store operands for later
		ld c, h
	
		or a		; negative?
		jp p, __DIV8A
		neg			; Make it positive
	
__DIV8A:
		ex af, af'
		ld a, h
		or a
		jp p, __DIV8B
		neg
		ld h, a		; make it positive
	
__DIV8B:
		ex af, af'
	
		call __DIVU8_FAST
	
		ld a, c
		xor l		; bit 7 of A = 1 if result is negative
	
		ld a, h		; Quotient
		ret p		; return if positive	
	
		neg
		ret
		
	
__MODU8:		; 8 bit module. REturns A mod (Top of stack) (unsigned operands)
		pop hl
		ex (sp), hl	; CALLEE
	
__MODU8_FAST:	; __FASTCALL__ entry
		call __DIVU8_FAST
		ld a, l		; Remainder
	
		ret		; a = Modulus
	
	
__MODI8:		; 8 bit module. REturns A mod (Top of stack) (For singed operands)
		pop hl
		ex (sp), hl	; CALLEE
	
__MODI8_FAST:	; __FASTCALL__ entry
		call __DIVI8_FAST
		ld a, l		; remainder
	
		ret		; a = Modulus
	
#line 2475 "cmjn.bas"
#line 1 "lti32.asm"
	
#line 1 "lti8.asm"
	
__LTI8: ; Test 8 bit values A < H
        ; Returns result in A: 0 = False, !0 = True
	        sub h
	
__LTI:  ; Signed CMP
	        PROC
	        LOCAL __PE
	
	        ld a, 0  ; Sets default to false
__LTI2:
	        jp pe, __PE
	        ; Overflow flag NOT set
	        ret p
	        dec a ; TRUE
	
__PE:   ; Overflow set
	        ret m
	        dec a ; TRUE
	        ret
	        
	        ENDP
#line 3 "lti32.asm"
	
	
__LTI32: ; Test 32 bit values HLDE < Top of the stack
	    exx
	    pop de ; Preserves return address
	    exx
	
	    call __SUB32
	
	    exx
	    push de ; Restores return address
	    exx
	
	    ld a, 0
	    jp __LTI2 ; go for sign
	
#line 2476 "cmjn.bas"
#line 1 "div16.asm"
	; 16 bit division and modulo functions 
	; for both signed and unsigned values
	
#line 1 "neg16.asm"
	; Negates HL value (16 bit)
__ABS16:
		bit 7, h
		ret z
	
__NEGHL:
		ld a, l			; HL = -HL
		cpl
		ld l, a
		ld a, h
		cpl
		ld h, a
		inc hl
		ret
	
#line 5 "div16.asm"
	
__DIVU16:    ; 16 bit unsigned division
	             ; HL = Dividend, Stack Top = Divisor
	
		;   -- OBSOLETE ; Now uses FASTCALL convention
		;   ex de, hl
	    ;	pop hl      ; Return address
	    ;	ex (sp), hl ; CALLEE Convention
	
__DIVU16_FAST:
	    ld a, h
	    ld c, l
	    ld hl, 0
	    ld b, 16
	
__DIV16LOOP:
	    sll c
	    rla
	    adc hl,hl
	    sbc hl,de
	    jr  nc, __DIV16NOADD
	    add hl,de
	    dec c
	
__DIV16NOADD:
	    djnz __DIV16LOOP
	
	    ex de, hl
	    ld h, a
	    ld l, c
	
	    ret     ; HL = quotient, DE = Mudulus
	
	
	
__MODU16:    ; 16 bit modulus
	             ; HL = Dividend, Stack Top = Divisor
	
	    ;ex de, hl
	    ;pop hl
	    ;ex (sp), hl ; CALLEE Convention
	
	    call __DIVU16_FAST
	    ex de, hl	; hl = reminder (modulus)
					; de = quotient
	
	    ret
	
	
__DIVI16:	; 16 bit signed division
		;	--- The following is OBSOLETE ---
		;	ex de, hl
		;	pop hl
		;	ex (sp), hl 	; CALLEE Convention
	
__DIVI16_FAST:
		ld a, d
		xor h
		ex af, af'		; BIT 7 of a contains result
	
		bit 7, d		; DE is negative?
		jr z, __DIVI16A	
	
		ld a, e			; DE = -DE
		cpl
		ld e, a
		ld a, d
		cpl
		ld d, a
		inc de
	
__DIVI16A:
		bit 7, h		; HL is negative?
		call nz, __NEGHL
	
__DIVI16B:
		call __DIVU16_FAST
		ex af, af'
	
		or a	
		ret p	; return if positive
	    jp __NEGHL
	
		
__MODI16:    ; 16 bit modulus
	             ; HL = Dividend, Stack Top = Divisor
	
	    ;ex de, hl
	    ;pop hl
	    ;ex (sp), hl ; CALLEE Convention
	
	    call __DIVI16_FAST
	    ex de, hl	; hl = reminder (modulus)
					; de = quotient
	
	    ret
	
#line 2477 "cmjn.bas"
#line 1 "mul32.asm"
#line 1 "_mul32.asm"
	
; Ripped from: http://www.andreadrian.de/oldcpu/z80_number_cruncher.html#moztocid784223
	; Used with permission.
	; Multiplies 32x32 bit integer (DEHL x D'E'H'L')
	; 64bit result is returned in H'L'H L B'C'A C
	
	
__MUL32_64START:
			push hl
			exx
			ld b, h
			ld c, l		; BC = Low Part (A)
			pop hl		; HL = Load Part (B)
			ex de, hl	; DE = Low Part (B), HL = HightPart(A) (must be in B'C')
			push hl
	
			exx
			pop bc		; B'C' = HightPart(A)
			exx			; A = B'C'BC , B = D'E'DE
	
				; multiply routine 32 * 32bit = 64bit
				; h'l'hlb'c'ac = b'c'bc * d'e'de
				; needs register a, changes flags
				;
				; this routine was with tiny differences in the
				; sinclair zx81 rom for the mantissa multiply
	
__LMUL:
	        and     a               ; reset carry flag
	        sbc     hl,hl           ; result bits 32..47 = 0
	        exx
	        sbc     hl,hl           ; result bits 48..63 = 0
	        exx
	        ld      a,b             ; mpr is b'c'ac
	        ld      b,33            ; initialize loop counter
	        jp      __LMULSTART  
	
__LMULLOOP:
	        jr      nc,__LMULNOADD  ; JP is 2 cycles faster than JR. Since it's inside a LOOP
	                                ; it can save up to 33 * 2 = 66 cycles
	                                ; But JR if 3 cycles faster if JUMP not taken!
	        add     hl,de           ; result += mpd
	        exx
	        adc     hl,de
	        exx
	
__LMULNOADD:
	        exx
	        rr      h               ; right shift upper
	        rr      l               ; 32bit of result
	        exx
	        rr      h
	        rr      l
	
__LMULSTART:
	        exx
	        rr      b               ; right shift mpr/
	        rr      c               ; lower 32bit of result
	        exx
	        rra                     ; equivalent to rr a
	        rr      c
	        djnz    __LMULLOOP
	
			ret						; result in h'l'hlb'c'ac
	       
#line 2 "mul32.asm"
	
__MUL32:	; multiplies 32 bit un/signed integer.
				; First operand stored in DEHL, and 2nd onto stack
				; Lowest part of 2nd operand on top of the stack
				; returns the result in DE.HL
			exx
			pop hl	; Return ADDRESS
			pop de	; Low part
			ex (sp), hl ; CALLEE -> HL = High part
			ex de, hl
			call __MUL32_64START
	
__TO32BIT:  ; Converts H'L'HLB'C'AC to DEHL (Discards H'L'HL)
			exx
			push bc
			exx
			pop de
			ld h, a
			ld l, c
			ret
	
	
#line 2478 "cmjn.bas"
#line 1 "eq16.asm"
__EQ16:	; Test if 16bit values HL == DE
		; Returns result in A: 0 = False, FF = True
			or a	; Reset carry flag
			sbc hl, de 
	
			ld a, h
			or l
			sub 1  ; sets carry flag only if a = 0
			sbc a, a
			
			ret
	
#line 2479 "cmjn.bas"
#line 1 "band16.asm"
; vim:ts=4:et:
	; FASTCALL bitwise and16 version.
	; result in hl 
; __FASTCALL__ version (operands: A, H)
	; Performs 16bit or 16bit and returns the boolean
; Input: HL, DE
; Output: HL <- HL AND DE
	
__BAND16:
		ld a, h
		and d
	    ld h, a
	
	    ld a, l
	    and e
	    ld l, a
	
	    ret 
	
#line 2480 "cmjn.bas"
#line 1 "swap32.asm"
	; Exchanges current DE HL with the
	; ones in the stack
	
__SWAP32:
		pop bc ; Return address
	
		exx
		pop hl	; exx'
		pop de
	
		exx
		push de ; exx
		push hl
	
		exx		; exx '
		push de
		push hl
		
		exx		; exx
		pop hl
		pop de
	
		push bc
	
		ret
	
#line 2481 "cmjn.bas"
	
ZXBASIC_USER_DATA:
	_hiscore EQU 57388
	_oxfriso2 EQU 57384
	_qq2 EQU 57346
	_seed EQU 57382
	_oxiso EQU 57372
	_ee2 EQU 57364
	_oysh EQU 57380
	_oxsh EQU 57378
	_ee4 EQU 57368
	_spq0 EQU 57358
	_ee1 EQU 57362
	_ee0 EQU 57360
	_ee3 EQU 57366
	_stamina EQU 57390
	_score EQU 57386
	_xpos EQU 57348
	_oxfriso EQU 57370
	_ypos EQU 57350
	_cpos EQU 57352
	_shot EQU 57376
	_xdrc EQU 57356
	_eez EQU 57354
	_level EQU 57392
	_oyiso EQU 57374
	_eee EQU 57344
	; Defines DATA END --> HEAP size is 0
ZXBASIC_USER_DATA_END EQU ZXBASIC_MEM_HEAP
	; Defines USER DATA Length in bytes
ZXBASIC_USER_DATA_LEN EQU ZXBASIC_USER_DATA_END - ZXBASIC_USER_DATA
	END
